﻿//    Copyright 2010,2011 Himanshu Vasishth
//   
//    This file is part of SecretVault.
//
//    SecretVault is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    SecretVault is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with SecretVault.  If not, see <http://www.gnu.org/licenses/>.
//
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace PasswordStoreProvider
{
    /// <summary>
    /// Class used to represent the resource login combinations which is protected 
    /// by a password
    /// </summary>
    public class LoginInfo
    {
        public string Resource
        {
            get; set;
        }

        public string Login
        {
            get; set;
        }

        public override bool Equals(object obj)
        {
            if(obj != null &&
               obj.GetType().Equals(typeof(LoginInfo)))
            {
                var otherInfo = (LoginInfo) obj;
                return string.Equals(Resource, otherInfo.Resource, StringComparison.CurrentCulture) &&
                       string.Equals(Login, otherInfo.Login, StringComparison.CurrentCulture);
            }
            return false;
        }

        public override int GetHashCode()
        {
            return (Resource + Login).GetHashCode();
        }
    }
}
